package com.ruoyi.consume.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.consume.mapper.StromaApplyConMapper;
import com.ruoyi.consume.domain.StromaApplyCon;
import com.ruoyi.consume.service.IStromaApplyConService;

/**
 * 基质领用Service业务层处理
 *
 * @author ruoyi
 * @date 2021-07-23
 */
@Service
public class StromaApplyConServiceImpl implements IStromaApplyConService
{
    @Autowired
    private StromaApplyConMapper stromaApplyConMapper;

    /**
     * 查询基质领用
     *
     * @param stromaApplyId 基质领用ID
     * @return 基质领用
     */
    @Override
    public StromaApplyCon selectStromaApplyById(Long stromaApplyId)
    {
        return stromaApplyConMapper.selectStromaApplyById(stromaApplyId);
    }

    /**
     * 查询基质领用列表
     *
     * @param stromaApplyCon 基质领用
     * @return 基质领用
     */
    @Override
    public List<StromaApplyCon> selectStromaApplyList(StromaApplyCon stromaApplyCon)
    {
        return stromaApplyConMapper.selectStromaApplyList(stromaApplyCon);
    }

    /**
     * 新增基质领用
     *
     * @param stromaApplyCon 基质领用
     * @return 结果
     */
    @Override
    public int insertStromaApply(StromaApplyCon stromaApplyCon)
    {
        stromaApplyCon.setCreateTime(DateUtils.getNowDate());
        return stromaApplyConMapper.insertStromaApply(stromaApplyCon);
    }

    /**
     * 修改基质领用
     *
     * @param stromaApplyCon 基质领用
     * @return 结果
     */
    @Override
    public int updateStromaApply(StromaApplyCon stromaApplyCon)
    {
        stromaApplyCon.setUpdateTime(DateUtils.getNowDate());
        return stromaApplyConMapper.updateStromaApply(stromaApplyCon);
    }

    /**
     * 批量删除基质领用
     *
     * @param stromaApplyIds 需要删除的基质领用ID
     * @return 结果
     */
    @Override
    public int deleteStromaApplyByIds(Long[] stromaApplyIds)
    {
        return stromaApplyConMapper.deleteStromaApplyByIds(stromaApplyIds);
    }

    /**
     * 删除基质领用信息
     *
     * @param stromaApplyId 基质领用ID
     * @return 结果
     */
    @Override
    public int deleteStromaApplyById(Long stromaApplyId)
    {
        return stromaApplyConMapper.deleteStromaApplyById(stromaApplyId);
    }

    /**
     * 更新库存量表
     *
     * @param stromaApplyCon 种子领用ID
     * @return 结果
     */
    @Override
    public int updateStromaAmount(StromaApplyCon stromaApplyCon){
        return stromaApplyConMapper.updateStromaAmount(stromaApplyCon);
    }

    /**
     * 更新领用状态
     *
     * @param stromaApplyId 种子领用ID
     * @return 结果
     */
    @Override
    public int updateConsumeStatus(Long stromaApplyId){
        return stromaApplyConMapper.updateConsumeStatus(stromaApplyId);
    }

    /**
     * 退回操作
     *
     * @param stromaApplyId 种子领用ID
     * @return 结果
     */
    @Override
    public int updateApprovalStatus(Long stromaApplyId){
        return stromaApplyConMapper.updateApprovalStatus(stromaApplyId);
    }
}
